This specification relates to input methods.
A writing system uses symbols (e.g., characters or graphemes) to represent sounds of a language. A collection of symbols in a writing system can be referred to as a script. For example, a Latin writing system, including a collection of Roman characters in one or more Roman scripts, can be used to represent the English language. The Latin writing system can include blocked Roman characters (e.g., capitalized character “B”), typed Roman characters (e.g., plain character “b”), and cursive Roman characters (e.g., cursive character “b”). Each visual representation of the character “b” represents the same grapheme in the Latin writing system.
As another example, the Chinese language can be represented by more than one writing system. For example, the Chinese language can be represented by a first writing system, e.g., Pinyin (or Romanized Chinese). As another example, the Chinese language can be represented using a second writing system, e.g., Bopomofo or Zhuyin Fuhao (“Zhuyin”). As yet another example, the Chinese language can be represented using a third writing system, e.g., Hanzi. In particular, Pinyin and Zhuyin are phonetic systems for representing Hanzi characters.
Languages that use logographic writing systems in which one or more symbols, e.g., characters, correspond roughly to one word or meaning have more characters than keys on a standard input device, such as a computer keyboard on a mobile device keypad. An input method editor, however, facilitates the use of computer keyboards to input characters in these writing systems. For example, an input method editor can take Roman character inputs in the Pinyin writing system and map the inputs to the many Hanzi characters of the Chinese language. Accordingly, a keyboard designed for input in a first writing system can be used to input text in a second writing system, e.g., a keyboard for Roman scripts (e.g., a QWERTY keyboard) can be used to input Chinese, Japanese, or Korean characters.